The connections between computers are not all the same. Whereas within a particular network the capacity may be a known constant, connections between computers on different networks may result in one computer delivering data to the other computer faster or slower than the other computer may process. A well-known example of this is the Internet. Although individual computers typically connect to Internet Service Providers (ISPs) using connections that run at roughly 1-2 megabits per second (Mbps), the backbone of the Internet, which connects the core computers of the Internet, allows for data to flow at rates hundreds and thousands times faster.
In addition, as an individual computer on a variable bit-rate network sends or receives data, the traffic consumes some of the network capacity. This traffic limits that amount of “other data” that may be sent over the network. Thus, the available bit-rate (also called the available bandwidth) of the connection varies from the maximum capacity of the connection. This situation is further compounded where the individual computer shares a connection to the Internet (for example, a computer connected via a cable-modem or within a Local Area Network (LAN)): the available bit-rate may vary without the individual computer sending or receiving data.
Where data is coming out of a constant bit-rate network, the data is being delivered at a known rate (hence the “constant bit-rate” in the description of the network). But where the data enters a variable bit-rate network, a problem may arise. The data coming from the constant bit-rate network may exceed the available bit-rate of the variable bit-rate network. Unless there is guarantee regarding the quality of service (something most variable bit-rate networks do not provide), data coming from the constant bit-rate network may be lost.
A need remains for a way deliver data from a constant bit-rate network to a variable bit-rate network without loss of data, that addresses these and other problems associated with the prior art.